package com.campus_information_portal.service;

import com.campus_information_portal.entity.ApplyRecheck;
import com.campus_information_portal.util.Message;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import org.springframework.stereotype.Service;

/**
 * @author 20155887 赵开兰
 * @className : MarkCheckService
 * @Description： 成绩管理模块学生申请复查和老师处理申请业务接口层
 * @create 2018/04/19 15:30
 **/
@Service
public interface MarkCheckService {
    /**
     * @param :ApplyRecheck applyRecheck
     * @Description :添加一条学生申请成绩复查记录
     * @author 20155887 赵开兰
     * @methodName :insertApplyRecheck
     * @returnType ：void
     * @create 2018/5/3 15:01
     **/
    Message insertApplyRecheck(ApplyRecheck applyRecheck);

    /**
     * @param :int stateUpdate, int applyRecheck
     * @Description :老师反馈学生申请成绩复查。老师查看学生复查成绩申请，并可能进行修改成绩，将
     * 申请状态改为1（代表成绩有误，已修改）；或将申请状态改为2，代表老师已审查完毕，成绩无误
     * @author 20155887 赵开兰
     * @methodName :replyOfApplyScoreRecheck
     * @returnType :int
     * @create 2018/5/3 15:23
     **/

    Message replyOfApplyScoreRecheck(int applyRecheckid, int stateUpdate);

    /**
     * @param ： int MarkId,成绩ID
     * @Description :通过成绩ID查询学生ID
     * @author 20155887 赵开兰
     * @methodName :queryStuIdByMarkId
     * @returnType ：int
     * @create 2018/5/24 14:10
     **/
    int queryStuIdByMarkId(int markId);

    /**
     * @param ：int markId
     * @Description : 根据MarkId查询申请复查表中有无该条成绩申请复查记录,若有记录，即返回值是1，
     * 说明该成绩已申请过了，若返回值是0，则说明可以申请复查成绩
     * @author 20155887 赵开兰
     * @methodName ：queryStateByMarkId
     * @returnType ：int
     * @create 2018/5/29 17:52
     **/
    int queryStateByMarkId(int markId);

    /**
     * @param
     * @Description :老师查询所有学生的成绩复查申请记录
     * @author 20155887 赵开兰
     * @methodName ：queryAllMarkChecks
     * @returnType ：Message
     * @create 2018/5/26 23:25
     **/
    Message queryAllMarkChecks();


}
